package com.hyt.it.ogt.ykcj.service.grade;

import java.util.List;

import com.hyt.it.ogt.ykcj.domain.grade.ServantSubjectPtGradeAnalysisData;

/**
 * 公务员考试科目层级成绩数据分析Service接口
 * 
 * @author admin
 * @date 2021-10-13
 */
public interface IServantSubjectPtGradeAnalysisDataService
{
    /**
     * 查询公务员考试科目层级成绩数据分析
     *
     * @param id 公务员考试科目层级成绩数据分析ID
     * @return 公务员考试科目层级成绩数据分析
     */
    ServantSubjectPtGradeAnalysisData selectServantSubjectPtGradeAnalysisDataById(String id);

    /**
     * 查询公务员考试科目层级成绩数据分析列表
     *
     * @param servantSubjectPtGradeAnalysisData 公务员考试科目层级成绩数据分析
     * @return 公务员考试科目层级成绩数据分析集合
     */
    List<ServantSubjectPtGradeAnalysisData> selectServantSubjectPtGradeAnalysisDataList(
            ServantSubjectPtGradeAnalysisData servantSubjectPtGradeAnalysisData);

    List<ServantSubjectPtGradeAnalysisData> selectAvgScoreByStem(
            ServantSubjectPtGradeAnalysisData servantSubjectPtGradeAnalysisData);

    /**
     * 新增公务员考试科目层级成绩数据分析
     *
     * @param servantSubjectPtGradeAnalysisData 公务员考试科目层级成绩数据分析
     * @return 结果
     */
    int insertServantSubjectPtGradeAnalysisData(
            ServantSubjectPtGradeAnalysisData servantSubjectPtGradeAnalysisData);

    /**
     * 批量新增公务员考试科目层级成绩数据分析
     *
     * @param list 公务员考试科目层级成绩数据分析
     * @return 结果
     */
    int batchInsertServantSubjectPtGradeAnalysisData(List<ServantSubjectPtGradeAnalysisData> list);

    /**
     * 修改公务员考试科目层级成绩数据分析
     *
     * @param servantSubjectPtGradeAnalysisData 公务员考试科目层级成绩数据分析
     * @return 结果
     */
    int updateServantSubjectPtGradeAnalysisData(
            ServantSubjectPtGradeAnalysisData servantSubjectPtGradeAnalysisData);

    /**
     * 批量删除公务员考试科目层级成绩数据分析
     *
     * @param ids 需要删除的公务员考试科目层级成绩数据分析ID
     * @return 结果
     */
    int deleteServantSubjectPtGradeAnalysisDataByIds(String[] ids);

    /**
     * 删除公务员考试科目层级成绩数据分析信息
     *
     * @param id 公务员考试科目层级成绩数据分析ID
     * @return 结果
     */
    int deleteServantSubjectPtGradeAnalysisDataById(String id);

    /**
     * 删除公务员考试科目层级成绩数据分析信息
     *
     * @return 结果
     */
    int delete(ServantSubjectPtGradeAnalysisData  data);

}
